package com.syq.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class CourseTemplateExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public CourseTemplateExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andCotnoIsNull() {
            addCriterion("cotno is null");
            return (Criteria) this;
        }

        public Criteria andCotnoIsNotNull() {
            addCriterion("cotno is not null");
            return (Criteria) this;
        }

        public Criteria andCotnoEqualTo(String value) {
            addCriterion("cotno =", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoNotEqualTo(String value) {
            addCriterion("cotno <>", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoGreaterThan(String value) {
            addCriterion("cotno >", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoGreaterThanOrEqualTo(String value) {
            addCriterion("cotno >=", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoLessThan(String value) {
            addCriterion("cotno <", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoLessThanOrEqualTo(String value) {
            addCriterion("cotno <=", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoLike(String value) {
            addCriterion("cotno like", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoNotLike(String value) {
            addCriterion("cotno not like", value, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoIn(List<String> values) {
            addCriterion("cotno in", values, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoNotIn(List<String> values) {
            addCriterion("cotno not in", values, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoBetween(String value1, String value2) {
            addCriterion("cotno between", value1, value2, "cotno");
            return (Criteria) this;
        }

        public Criteria andCotnoNotBetween(String value1, String value2) {
            addCriterion("cotno not between", value1, value2, "cotno");
            return (Criteria) this;
        }

        public Criteria andCnoIsNull() {
            addCriterion("cno is null");
            return (Criteria) this;
        }

        public Criteria andCnoIsNotNull() {
            addCriterion("cno is not null");
            return (Criteria) this;
        }

        public Criteria andCnoEqualTo(String value) {
            addCriterion("cno =", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoNotEqualTo(String value) {
            addCriterion("cno <>", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoGreaterThan(String value) {
            addCriterion("cno >", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoGreaterThanOrEqualTo(String value) {
            addCriterion("cno >=", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoLessThan(String value) {
            addCriterion("cno <", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoLessThanOrEqualTo(String value) {
            addCriterion("cno <=", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoLike(String value) {
            addCriterion("cno like", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoNotLike(String value) {
            addCriterion("cno not like", value, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoIn(List<String> values) {
            addCriterion("cno in", values, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoNotIn(List<String> values) {
            addCriterion("cno not in", values, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoBetween(String value1, String value2) {
            addCriterion("cno between", value1, value2, "cno");
            return (Criteria) this;
        }

        public Criteria andCnoNotBetween(String value1, String value2) {
            addCriterion("cno not between", value1, value2, "cno");
            return (Criteria) this;
        }

        public Criteria andAnoIsNull() {
            addCriterion("ano is null");
            return (Criteria) this;
        }

        public Criteria andAnoIsNotNull() {
            addCriterion("ano is not null");
            return (Criteria) this;
        }

        public Criteria andAnoEqualTo(String value) {
            addCriterion("ano =", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoNotEqualTo(String value) {
            addCriterion("ano <>", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoGreaterThan(String value) {
            addCriterion("ano >", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoGreaterThanOrEqualTo(String value) {
            addCriterion("ano >=", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoLessThan(String value) {
            addCriterion("ano <", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoLessThanOrEqualTo(String value) {
            addCriterion("ano <=", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoLike(String value) {
            addCriterion("ano like", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoNotLike(String value) {
            addCriterion("ano not like", value, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoIn(List<String> values) {
            addCriterion("ano in", values, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoNotIn(List<String> values) {
            addCriterion("ano not in", values, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoBetween(String value1, String value2) {
            addCriterion("ano between", value1, value2, "ano");
            return (Criteria) this;
        }

        public Criteria andAnoNotBetween(String value1, String value2) {
            addCriterion("ano not between", value1, value2, "ano");
            return (Criteria) this;
        }

        public Criteria andCotnameIsNull() {
            addCriterion("cotName is null");
            return (Criteria) this;
        }

        public Criteria andCotnameIsNotNull() {
            addCriterion("cotName is not null");
            return (Criteria) this;
        }

        public Criteria andCotnameEqualTo(String value) {
            addCriterion("cotName =", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameNotEqualTo(String value) {
            addCriterion("cotName <>", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameGreaterThan(String value) {
            addCriterion("cotName >", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameGreaterThanOrEqualTo(String value) {
            addCriterion("cotName >=", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameLessThan(String value) {
            addCriterion("cotName <", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameLessThanOrEqualTo(String value) {
            addCriterion("cotName <=", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameLike(String value) {
            addCriterion("cotName like", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameNotLike(String value) {
            addCriterion("cotName not like", value, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameIn(List<String> values) {
            addCriterion("cotName in", values, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameNotIn(List<String> values) {
            addCriterion("cotName not in", values, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameBetween(String value1, String value2) {
            addCriterion("cotName between", value1, value2, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotnameNotBetween(String value1, String value2) {
            addCriterion("cotName not between", value1, value2, "cotname");
            return (Criteria) this;
        }

        public Criteria andCotimgIsNull() {
            addCriterion("cotImg is null");
            return (Criteria) this;
        }

        public Criteria andCotimgIsNotNull() {
            addCriterion("cotImg is not null");
            return (Criteria) this;
        }

        public Criteria andCotimgEqualTo(String value) {
            addCriterion("cotImg =", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgNotEqualTo(String value) {
            addCriterion("cotImg <>", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgGreaterThan(String value) {
            addCriterion("cotImg >", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgGreaterThanOrEqualTo(String value) {
            addCriterion("cotImg >=", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgLessThan(String value) {
            addCriterion("cotImg <", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgLessThanOrEqualTo(String value) {
            addCriterion("cotImg <=", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgLike(String value) {
            addCriterion("cotImg like", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgNotLike(String value) {
            addCriterion("cotImg not like", value, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgIn(List<String> values) {
            addCriterion("cotImg in", values, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgNotIn(List<String> values) {
            addCriterion("cotImg not in", values, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgBetween(String value1, String value2) {
            addCriterion("cotImg between", value1, value2, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotimgNotBetween(String value1, String value2) {
            addCriterion("cotImg not between", value1, value2, "cotimg");
            return (Criteria) this;
        }

        public Criteria andCotdateIsNull() {
            addCriterion("cotDate is null");
            return (Criteria) this;
        }

        public Criteria andCotdateIsNotNull() {
            addCriterion("cotDate is not null");
            return (Criteria) this;
        }

        public Criteria andCotdateEqualTo(Date value) {
            addCriterion("cotDate =", value, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateNotEqualTo(Date value) {
            addCriterion("cotDate <>", value, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateGreaterThan(Date value) {
            addCriterion("cotDate >", value, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateGreaterThanOrEqualTo(Date value) {
            addCriterion("cotDate >=", value, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateLessThan(Date value) {
            addCriterion("cotDate <", value, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateLessThanOrEqualTo(Date value) {
            addCriterion("cotDate <=", value, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateIn(List<Date> values) {
            addCriterion("cotDate in", values, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateNotIn(List<Date> values) {
            addCriterion("cotDate not in", values, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateBetween(Date value1, Date value2) {
            addCriterion("cotDate between", value1, value2, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotdateNotBetween(Date value1, Date value2) {
            addCriterion("cotDate not between", value1, value2, "cotdate");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeIsNull() {
            addCriterion("cotStartTime is null");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeIsNotNull() {
            addCriterion("cotStartTime is not null");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeEqualTo(Date value) {
            addCriterion("cotStartTime =", value, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeNotEqualTo(Date value) {
            addCriterion("cotStartTime <>", value, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeGreaterThan(Date value) {
            addCriterion("cotStartTime >", value, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeGreaterThanOrEqualTo(Date value) {
            addCriterion("cotStartTime >=", value, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeLessThan(Date value) {
            addCriterion("cotStartTime <", value, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeLessThanOrEqualTo(Date value) {
            addCriterion("cotStartTime <=", value, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeIn(List<Date> values) {
            addCriterion("cotStartTime in", values, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeNotIn(List<Date> values) {
            addCriterion("cotStartTime not in", values, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeBetween(Date value1, Date value2) {
            addCriterion("cotStartTime between", value1, value2, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotstarttimeNotBetween(Date value1, Date value2) {
            addCriterion("cotStartTime not between", value1, value2, "cotstarttime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeIsNull() {
            addCriterion("cotEndTime is null");
            return (Criteria) this;
        }

        public Criteria andCotendtimeIsNotNull() {
            addCriterion("cotEndTime is not null");
            return (Criteria) this;
        }

        public Criteria andCotendtimeEqualTo(Date value) {
            addCriterion("cotEndTime =", value, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeNotEqualTo(Date value) {
            addCriterion("cotEndTime <>", value, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeGreaterThan(Date value) {
            addCriterion("cotEndTime >", value, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("cotEndTime >=", value, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeLessThan(Date value) {
            addCriterion("cotEndTime <", value, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeLessThanOrEqualTo(Date value) {
            addCriterion("cotEndTime <=", value, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeIn(List<Date> values) {
            addCriterion("cotEndTime in", values, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeNotIn(List<Date> values) {
            addCriterion("cotEndTime not in", values, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeBetween(Date value1, Date value2) {
            addCriterion("cotEndTime between", value1, value2, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCotendtimeNotBetween(Date value1, Date value2) {
            addCriterion("cotEndTime not between", value1, value2, "cotendtime");
            return (Criteria) this;
        }

        public Criteria andCottypeIsNull() {
            addCriterion("cotType is null");
            return (Criteria) this;
        }

        public Criteria andCottypeIsNotNull() {
            addCriterion("cotType is not null");
            return (Criteria) this;
        }

        public Criteria andCottypeEqualTo(String value) {
            addCriterion("cotType =", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeNotEqualTo(String value) {
            addCriterion("cotType <>", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeGreaterThan(String value) {
            addCriterion("cotType >", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeGreaterThanOrEqualTo(String value) {
            addCriterion("cotType >=", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeLessThan(String value) {
            addCriterion("cotType <", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeLessThanOrEqualTo(String value) {
            addCriterion("cotType <=", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeLike(String value) {
            addCriterion("cotType like", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeNotLike(String value) {
            addCriterion("cotType not like", value, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeIn(List<String> values) {
            addCriterion("cotType in", values, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeNotIn(List<String> values) {
            addCriterion("cotType not in", values, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeBetween(String value1, String value2) {
            addCriterion("cotType between", value1, value2, "cottype");
            return (Criteria) this;
        }

        public Criteria andCottypeNotBetween(String value1, String value2) {
            addCriterion("cotType not between", value1, value2, "cottype");
            return (Criteria) this;
        }

        public Criteria andCotstateIsNull() {
            addCriterion("cotState is null");
            return (Criteria) this;
        }

        public Criteria andCotstateIsNotNull() {
            addCriterion("cotState is not null");
            return (Criteria) this;
        }

        public Criteria andCotstateEqualTo(String value) {
            addCriterion("cotState =", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateNotEqualTo(String value) {
            addCriterion("cotState <>", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateGreaterThan(String value) {
            addCriterion("cotState >", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateGreaterThanOrEqualTo(String value) {
            addCriterion("cotState >=", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateLessThan(String value) {
            addCriterion("cotState <", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateLessThanOrEqualTo(String value) {
            addCriterion("cotState <=", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateLike(String value) {
            addCriterion("cotState like", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateNotLike(String value) {
            addCriterion("cotState not like", value, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateIn(List<String> values) {
            addCriterion("cotState in", values, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateNotIn(List<String> values) {
            addCriterion("cotState not in", values, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateBetween(String value1, String value2) {
            addCriterion("cotState between", value1, value2, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotstateNotBetween(String value1, String value2) {
            addCriterion("cotState not between", value1, value2, "cotstate");
            return (Criteria) this;
        }

        public Criteria andCotdescIsNull() {
            addCriterion("cotDesc is null");
            return (Criteria) this;
        }

        public Criteria andCotdescIsNotNull() {
            addCriterion("cotDesc is not null");
            return (Criteria) this;
        }

        public Criteria andCotdescEqualTo(String value) {
            addCriterion("cotDesc =", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescNotEqualTo(String value) {
            addCriterion("cotDesc <>", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescGreaterThan(String value) {
            addCriterion("cotDesc >", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescGreaterThanOrEqualTo(String value) {
            addCriterion("cotDesc >=", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescLessThan(String value) {
            addCriterion("cotDesc <", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescLessThanOrEqualTo(String value) {
            addCriterion("cotDesc <=", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescLike(String value) {
            addCriterion("cotDesc like", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescNotLike(String value) {
            addCriterion("cotDesc not like", value, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescIn(List<String> values) {
            addCriterion("cotDesc in", values, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescNotIn(List<String> values) {
            addCriterion("cotDesc not in", values, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescBetween(String value1, String value2) {
            addCriterion("cotDesc between", value1, value2, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andCotdescNotBetween(String value1, String value2) {
            addCriterion("cotDesc not between", value1, value2, "cotdesc");
            return (Criteria) this;
        }

        public Criteria andIsshareIsNull() {
            addCriterion("isShare is null");
            return (Criteria) this;
        }

        public Criteria andIsshareIsNotNull() {
            addCriterion("isShare is not null");
            return (Criteria) this;
        }

        public Criteria andIsshareEqualTo(Boolean value) {
            addCriterion("isShare =", value, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareNotEqualTo(Boolean value) {
            addCriterion("isShare <>", value, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareGreaterThan(Boolean value) {
            addCriterion("isShare >", value, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareGreaterThanOrEqualTo(Boolean value) {
            addCriterion("isShare >=", value, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareLessThan(Boolean value) {
            addCriterion("isShare <", value, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareLessThanOrEqualTo(Boolean value) {
            addCriterion("isShare <=", value, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareIn(List<Boolean> values) {
            addCriterion("isShare in", values, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareNotIn(List<Boolean> values) {
            addCriterion("isShare not in", values, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareBetween(Boolean value1, Boolean value2) {
            addCriterion("isShare between", value1, value2, "isshare");
            return (Criteria) this;
        }

        public Criteria andIsshareNotBetween(Boolean value1, Boolean value2) {
            addCriterion("isShare not between", value1, value2, "isshare");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}